package com.snowy.hidden.biz.service;

import com.snowy.framework.common.base.service.BaseService;
import com.snowy.framework.common.base.vo.LoginUser;
import com.snowy.framework.common.resp.BaseResp;
import com.snowy.hidden.biz.domain.model.QuestionBank;
import com.snowy.hidden.biz.domain.model.QuestionOptions;
import com.snowy.hidden.biz.domain.req.SubmitUserAnswersReq;
import com.snowy.hidden.biz.domain.resp.QuestionBankListResp;
import com.snowy.hidden.biz.domain.resp.SubmitUserAnswersResp;
import com.snowy.hidden.paging.PageQueryModel;

import java.util.List;

/**
 * 问答题库表(QuestionBank)表服务接口
 *
 * @author makejava
 * @since 2025-11-16 17:13:34
 */
public interface QuestionBankService extends BaseService<QuestionBank> {

   BaseResp queryPage(PageQueryModel pageQueryModel);

   /**
    * 获取问题集合
    * @param userRedisInfo
    * @return
    */
   List<QuestionBankListResp> queryList(LoginUser userRedisInfo);

   /**
    * 获取答案集合
    * @param questionId
    * @return
    */
   List<QuestionOptions> getOptions(String questionId);

   /**
    * 提交答题,返回正确和错误，这道题的积分，用户目前总积分
    * @param submitUserAnswersReq
    * @param userRedisInfo
    * @return
    */
   SubmitUserAnswersResp submitquery(SubmitUserAnswersReq submitUserAnswersReq, LoginUser userRedisInfo);

}
